In a conventional conditional access system, transport streams are encrypted using a control word with a transport encryption algorithm, such as the SCTE52 algorithm. The control word is delivered to a client device, such as a set-top box, in encrypted form (Encrypted Control Word (ECW)). In general, the encryption is performed based on a hardware key ladder, which includes different levels of encryption keys, using either a system wide global key when a global key ladder is used or a device unique key when a unique key ladder is used. Typically, these keys are stored in One Time Programmable (OTP) memory.
During a normal operation, the client device uses the hardware keys in the key ladder to decrypt the ECW to derive the control word. The client device then uses the control word to decrypt a transport stream. This operation involves a number of parameters, including Initialization Vectors (IVs), used by the transport encryption algorithm and a hardware key, such as the system wide global key or the device unique key. Some of these parameters are programmed on the OTP memory of the client device during a chip programming process, while other parameters may be part of the chip hardware/firmware. The keys, parameters, and key integrity value (KIV) are programmed onto the chip during a chip manufacturing and programming process. The keys and parameters are typically not accessible to a general purpose processor on the client device. Instead, the keys and parameters are typically only accessible by a secure processor to only perform specific functions as specified in the conditional access (CA) algorithm.
Errors, such as, incorrectly programmed bits of a parameter value, have been found to occur in some OTP memories during the chip programming process. Identification of such errors throughout the life cycles of client devices is thus critical to maintaining a relatively high level of product quality. Current techniques for manufacturing and using the client devices, however, are incapable of identifying such errors in a cost-effective, efficient, and secure manner because of the protection measures employed to keep the keys and parameters secret.